import TOKEN from "./token";
import * as Cesium from "cesium";

// 默认配置项
const defaultOptions = {
  // 界面控件 全部关闭
  timeline: false, // 时间轴控件
  animation: false, // 动画控件
  geocoder: false, // 搜索按钮
  homeButton: false, // 主页按钮
  sceneModePicker: false, // 投影方式按钮
  baseLayerPicker: false, // 图层选择按钮
  navigationHelpButton: false, // 帮助手势按钮
  fullscreenButton: false, // 全屏按钮
};

class MyCesium {
  viewer = null;
  _el = null;
  constructor(el, options = {}) {
    this.init(el, options);
  }

  init(el, options) {
    if (!el) return console.error("CesiumInstance el is null");
    // 设置TOKEN
    Cesium.Ion.defaultAccessToken = TOKEN;
    // 初始化容器
    const viewer = new Cesium.Viewer(el, {
      ...defaultOptions,
      ...options,
    });
    // 隐藏版权信息
    viewer.cesiumWidget.creditContainer.style.display = "none";

    this.viewer = viewer;
    this._el = el;
  }
}

export default MyCesium;
